<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=2">
<meta name="theme-color" content="#222">
<meta name="generator" content="Hexo 6.1.0">
  <link rel="apple-touch-icon" sizes="180x180" href="/xx1997/images/apple-touch-icon-next.png">
  <link rel="icon" type="image/png" sizes="32x32" href="/xx1997/images/favicon-32x32-next.png">
  <link rel="icon" type="image/png" sizes="16x16" href="/xx1997/images/favicon-16x16-next.png">
  <link rel="mask-icon" href="/xx1997/images/logo.svg" color="#222">

<link rel="stylesheet" href="/xx1997/css/main.css">


<link rel="stylesheet" href="/xx1997/lib/font-awesome/css/all.min.css">

<script id="hexo-configurations">
    var NexT = window.NexT || {};
    var CONFIG = {"hostname":"xx1997.gitee.io","root":"/xx1997/","scheme":"Gemini","version":"7.8.0","exturl":false,"sidebar":{"position":"left","display":"post","padding":18,"offset":12,"onmobile":false},"copycode":{"enable":false,"show_result":false,"style":null},"back2top":{"enable":true,"sidebar":false,"scrollpercent":false},"bookmark":{"enable":false,"color":"#222","save":"auto"},"fancybox":false,"mediumzoom":false,"lazyload":false,"pangu":false,"comments":{"style":"tabs","active":null,"storage":true,"lazyload":false,"nav":null},"algolia":{"hits":{"per_page":10},"labels":{"input_placeholder":"Search for Posts","hits_empty":"We didn't find any results for the search: ${query}","hits_stats":"${hits} results found in ${time} ms"}},"localsearch":{"enable":true,"trigger":"auto","top_n_per_article":1,"unescape":false,"preload":false},"motion":{"enable":true,"async":false,"transition":{"post_block":"fadeIn","post_header":"slideDownIn","post_body":"slideDownIn","coll_header":"slideLeftIn","sidebar":"slideUpIn"}},"path":"search.xml"};
  </script>

  <meta name="description" content="Linux命令1. echo命令将hello，world输出到终端屏幕 echo hello，world 输出变量 echo $变量名称 2. date命令date输出日期 date -s “2021-12-14 10:00:00”更改时间为2021-12-14 10:00:00 3. reboot命令重启 4. poweroff命令关机 5. wget命令wget http:&#x2F;&#x2F;www.linu">
<meta property="og:type" content="article">
<meta property="og:title" content="Linux常用命令">
<meta property="og:url" content="https://xx1997.gitee.io/2022/04/21/Linux%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4/index.html">
<meta property="og:site_name" content="xxstar blog">
<meta property="og:description" content="Linux命令1. echo命令将hello，world输出到终端屏幕 echo hello，world 输出变量 echo $变量名称 2. date命令date输出日期 date -s “2021-12-14 10:00:00”更改时间为2021-12-14 10:00:00 3. reboot命令重启 4. poweroff命令关机 5. wget命令wget http:&#x2F;&#x2F;www.linu">
<meta property="og:locale" content="zh_CN">
<meta property="article:published_time" content="2022-04-21T02:50:00.000Z">
<meta property="article:modified_time" content="2022-04-28T08:04:09.430Z">
<meta property="article:author" content="xxstar">
<meta property="article:tag" content="Linux - shell">
<meta name="twitter:card" content="summary">

<link rel="canonical" href="https://xx1997.gitee.io/2022/04/21/Linux%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4/">


<script id="page-configurations">
  // https://hexo.io/docs/variables.html
  CONFIG.page = {
    sidebar: "",
    isHome : false,
    isPost : true,
    lang   : 'zh-CN'
  };
</script>

  <title>Linux常用命令 | xxstar blog</title>
  






  <noscript>
  <style>
  .use-motion .brand,
  .use-motion .menu-item,
  .sidebar-inner,
  .use-motion .post-block,
  .use-motion .pagination,
  .use-motion .comments,
  .use-motion .post-header,
  .use-motion .post-body,
  .use-motion .collection-header { opacity: initial; }

  .use-motion .site-title,
  .use-motion .site-subtitle {
    opacity: initial;
    top: initial;
  }

  .use-motion .logo-line-before i { left: initial; }
  .use-motion .logo-line-after i { right: initial; }
  </style>
</noscript>

</head>

<body itemscope itemtype="http://schema.org/WebPage">
  <div class="container use-motion">
    <div class="headband"></div>

    <header class="header" itemscope itemtype="http://schema.org/WPHeader">
      <div class="header-inner"><div class="site-brand-container">
  <div class="site-nav-toggle">
    <div class="toggle" aria-label="切换导航栏">
      <span class="toggle-line toggle-line-first"></span>
      <span class="toggle-line toggle-line-middle"></span>
      <span class="toggle-line toggle-line-last"></span>
    </div>
  </div>

  <div class="site-meta">

    <a href="/xx1997/" class="brand" rel="start">
      <span class="logo-line-before"><i></i></span>
      <h1 class="site-title">xxstar blog</h1>
      <span class="logo-line-after"><i></i></span>
    </a>
  </div>

  <div class="site-nav-right">
    <div class="toggle popup-trigger">
        <i class="fa fa-search fa-fw fa-lg"></i>
    </div>
  </div>
</div>




<nav class="site-nav">
  <ul id="menu" class="main-menu menu">
        <li class="menu-item menu-item-home">

    <a href="/xx1997/" rel="section"><i class="fa fa-home fa-fw"></i>首页</a>

  </li>
        <li class="menu-item menu-item-tags">

    <a href="/xx1997/tags/" rel="section"><i class="fa fa-tags fa-fw"></i>标签</a>

  </li>
        <li class="menu-item menu-item-categories">

    <a href="/xx1997/categories/" rel="section"><i class="fa fa-th fa-fw"></i>分类</a>

  </li>
        <li class="menu-item menu-item-archives">

    <a href="/xx1997/archives/" rel="section"><i class="fa fa-archive fa-fw"></i>归档</a>

  </li>
      <li class="menu-item menu-item-search">
        <a role="button" class="popup-trigger"><i class="fa fa-search fa-fw"></i>搜索
        </a>
      </li>
  </ul>
</nav>



  <div class="search-pop-overlay">
    <div class="popup search-popup">
        <div class="search-header">
  <span class="search-icon">
    <i class="fa fa-search"></i>
  </span>
  <div class="search-input-container">
    <input autocomplete="off" autocapitalize="off"
           placeholder="搜索..." spellcheck="false"
           type="search" class="search-input">
  </div>
  <span class="popup-btn-close">
    <i class="fa fa-times-circle"></i>
  </span>
</div>
<div id="search-result">
  <div id="no-result">
    <i class="fa fa-spinner fa-pulse fa-5x fa-fw"></i>
  </div>
</div>

    </div>
  </div>

</div>
    </header>

    
  <div class="back-to-top">
    <i class="fa fa-arrow-up"></i>
    <span>0%</span>
  </div>


    <main class="main">
      <div class="main-inner">
        <div class="content-wrap">
          

          <div class="content post posts-expand">
            

    
  
  
  <article itemscope itemtype="http://schema.org/Article" class="post-block" lang="zh-CN">
    <link itemprop="mainEntityOfPage" href="https://xx1997.gitee.io/2022/04/21/Linux%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4/">

    <span hidden itemprop="author" itemscope itemtype="http://schema.org/Person">
      <meta itemprop="image" content="/xx1997/images/xxstar.jpg">
      <meta itemprop="name" content="xxstar">
      <meta itemprop="description" content="">
    </span>

    <span hidden itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
      <meta itemprop="name" content="xxstar blog">
    </span>
      <header class="post-header">
        <h1 class="post-title" itemprop="name headline">
          Linux常用命令
        </h1>

        <div class="post-meta">
            <span class="post-meta-item">
              <span class="post-meta-item-icon">
                <i class="far fa-calendar"></i>
              </span>
              <span class="post-meta-item-text">发表于</span>

              <time title="创建时间：2022-04-21 10:50:00" itemprop="dateCreated datePublished" datetime="2022-04-21T10:50:00+08:00">2022-04-21</time>
            </span>
              <span class="post-meta-item">
                <span class="post-meta-item-icon">
                  <i class="far fa-calendar-check"></i>
                </span>
                <span class="post-meta-item-text">更新于</span>
                <time title="修改时间：2022-04-28 16:04:09" itemprop="dateModified" datetime="2022-04-28T16:04:09+08:00">2022-04-28</time>
              </span>
            <span class="post-meta-item">
              <span class="post-meta-item-icon">
                <i class="far fa-folder"></i>
              </span>
              <span class="post-meta-item-text">分类于</span>
                <span itemprop="about" itemscope itemtype="http://schema.org/Thing">
                  <a href="/xx1997/categories/programming/" itemprop="url" rel="index"><span itemprop="name">编程</span></a>
                </span>
            </span>

          
            <span class="post-meta-item" title="阅读次数" id="busuanzi_container_page_pv" style="display: none;">
              <span class="post-meta-item-icon">
                <i class="fa fa-eye"></i>
              </span>
              <span class="post-meta-item-text">阅读次数：</span>
              <span id="busuanzi_value_page_pv"></span>
            </span>

        </div>
      </header>

    
    
    
    <div class="post-body" itemprop="articleBody">

      
        <h2 id="Linux命令"><a href="#Linux命令" class="headerlink" title="Linux命令"></a>Linux命令</h2><h3 id="1-echo命令"><a href="#1-echo命令" class="headerlink" title="1. echo命令"></a>1. echo命令</h3><p>将hello，world输出到终端屏幕</p>
<p>echo hello，world</p>
<p>输出变量</p>
<p>echo $变量名称</p>
<h3 id="2-date命令"><a href="#2-date命令" class="headerlink" title="2. date命令"></a>2. date命令</h3><p>date输出日期</p>
<p>date -s “2021-12-14 10:00:00”更改时间为2021-12-14 10:00:00</p>
<h3 id="3-reboot命令"><a href="#3-reboot命令" class="headerlink" title="3. reboot命令"></a>3. reboot命令</h3><p>重启</p>
<h3 id="4-poweroff命令"><a href="#4-poweroff命令" class="headerlink" title="4. poweroff命令"></a>4. poweroff命令</h3><p>关机</p>
<h3 id="5-wget命令"><a href="#5-wget命令" class="headerlink" title="5. wget命令"></a>5. wget命令</h3><p>wget <a target="_blank" rel="noopener" href="http://www.linuxprobe.com/docs/LinuxProbe.pdf">http://www.linuxprobe.com/docs/LinuxProbe.pdf</a> 下载文件</p>
<p>wget -r -p <a target="_blank" rel="noopener" href="http://www.linuxprobe.com递归下载www.linuxprobe.com/">http://www.linuxprobe.com递归下载www.linuxprobe.com</a> 网站内的所有页面数据以及文件，下载完后会自动保存到当前路径下一个名为<a target="_blank" rel="noopener" href="http://www.linuxprobe.com的目录中/">www.linuxprobe.com的目录中</a></p>
<h3 id="6-ps命令"><a href="#6-ps命令" class="headerlink" title="6. ps命令"></a>6. ps命令</h3><p>ps -a显示当前服务器所有用户进程</p>
<p>ps -a|grep java显示所有java进程</p>
<h3 id="7-top命令"><a href="#7-top命令" class="headerlink" title="7. top命令"></a>7. top命令</h3><p>用于动态地监视进程活动与系统负载等信息</p>
<h3 id="8-pidof命令"><a href="#8-pidof命令" class="headerlink" title="8. pidof命令"></a>8. pidof命令</h3><p>pidof docker查看docker进程的PID值（进程ID）</p>
<h3 id="9-kill命令"><a href="#9-kill命令" class="headerlink" title="9. kill命令"></a>9. kill命令</h3><p>kill PID值杀死PID值的进程</p>
<h3 id="10-killall命令"><a href="#10-killall命令" class="headerlink" title="10. killall命令"></a>10. killall命令</h3><p>killall docker杀死docker的所有进程</p>
<h3 id="11-ifconfig命令"><a href="#11-ifconfig命令" class="headerlink" title="11. ifconfig命令"></a>11. ifconfig命令</h3><p>查看本机当前的网卡配置与网络状态等信息时，其实主要查看的就是网卡名称、inet参数后面的IP地址、ether参数后面的网卡物理地址（又称为MAC地址），以及RX、TX的接收数据包与发送数据包的个数及累计流量</p>
<h3 id="12-uname命令"><a href="#12-uname命令" class="headerlink" title="12. uname命令"></a>12. uname命令</h3><p>uname -a查看系统内核信息与系统版本等信息</p>
<h3 id="13-uptime命令"><a href="#13-uptime命令" class="headerlink" title="13. uptime命令"></a>13. uptime命令</h3><p>查看系统负载</p>
<h3 id="14-free命令"><a href="#14-free命令" class="headerlink" title="14. free命令"></a>14. free命令</h3><p>free -h查看当前系统中内存的使用量信息</p>
<h3 id="15-who命令"><a href="#15-who命令" class="headerlink" title="15. who命令"></a>15. who命令</h3><p>查看所有正在登录本机的用户的名称以及他们正在开启的终端信息</p>
<h3 id="16-last命令"><a href="#16-last命令" class="headerlink" title="16. last命令"></a>16. last命令</h3><p>查看本机的登录记录</p>
<h3 id="17-history命令"><a href="#17-history命令" class="headerlink" title="17. history命令"></a>17. history命令</h3><p>当前用户在本地计算机中执行过的最近1000条命令记录</p>
<h3 id="18-sosreport命令"><a href="#18-sosreport命令" class="headerlink" title="18. sosreport命令"></a>18. sosreport命令</h3><p>收集系统配置及架构信息并输出诊断文档</p>
<h3 id="19-pwd命令"><a href="#19-pwd命令" class="headerlink" title="19. pwd命令"></a>19. pwd命令</h3><p>查看当前所处的工作目录</p>
<h3 id="20-cd命令"><a href="#20-cd命令" class="headerlink" title="20. cd命令"></a>20. cd命令</h3><p>cd &#x2F;usr切换到usr工作目录</p>
<p>cd ..&#x2F;返回上一级工作目录</p>
<p>cd ~切换到当前用户的家目录</p>
<h3 id="21-ls命令"><a href="#21-ls命令" class="headerlink" title="21. ls命令"></a>21. ls命令</h3><p>显示目录中的文件信息</p>
<p>ls -al：“-a”参数看到全部文件（包括隐藏文件），使用“-l”参数可以查看文件的属性、大小等详细信息。</p>
<h3 id="22-ll命令"><a href="#22-ll命令" class="headerlink" title="22. ll命令"></a>22. ll命令</h3><p>等同于ls -al</p>
<h3 id="23-cat命令"><a href="#23-cat命令" class="headerlink" title="23. cat命令"></a>23. cat命令</h3><p>用于查看纯文本文件（内容较少的），-n ：显示行号</p>
<h3 id="24-more命令"><a href="#24-more命令" class="headerlink" title="24. more命令"></a>24. more命令</h3><p>more命令会在最下面使用百分比的形式来提示您已经阅读了多少内容，还可以使用空格键或回车键向下翻页</p>
<h3 id="25-head命令"><a href="#25-head命令" class="headerlink" title="25. head命令"></a>25. head命令</h3><p>head -n 20 redis.conf 查看文件前20行</p>
<h3 id="26-tail命令"><a href="#26-tail命令" class="headerlink" title="26. tail命令"></a>26. tail命令</h3><p>tail -n 20 redis.conf查看文件后20行</p>
<p>tail -f hello.log查看实时最新日志文件时</p>
<h3 id="27-tr命令"><a href="#27-tr命令" class="headerlink" title="27. tr命令"></a>27. tr命令</h3><p>替换文本文件中的字符，格式为“tr [原始字符] [目标字符]”</p>
<p>cat anaconda-ks.cfg | tr [a-z] [A-Z]把文件小写字母替换成大写</p>
<h3 id="28-wc命令"><a href="#28-wc命令" class="headerlink" title="28. wc命令"></a>28. wc命令</h3><p>统计指定文本的行数（-l）、字数（-w）、字节数（-c），格式为“wc [参数] 文本”</p>
<h3 id="29-stat命令"><a href="#29-stat命令" class="headerlink" title="29. stat命令"></a>29. stat命令</h3><p>文件的具体存储信息和时间等信息，格式为“stat 文件名称”</p>
<h3 id="30-cut命令"><a href="#30-cut命令" class="headerlink" title="30. cut命令"></a>30. cut命令</h3><p>按“列”提取文本字符，格式为“cut [参数] 文本”</p>
<h3 id="31-diff命令"><a href="#31-diff命令" class="headerlink" title="31. diff命令"></a>31. diff命令</h3><p>先使用cat命令分别查看diff_A.txt和diff_B.txt文件的内容<br>cat diff_A.txt<br>cat diff_B.txt<br>接下来使用diff ——brief命令显示比较后的结果，判断文件是否相同<br>diff ——brief diff_A.txt diff_B.txt<br>最后使用带有-c参数的diff命令来描述文件内容具体的不同<br>diff -c diff_A.txt diff_B.txt</p>
<h3 id="32-touch命令"><a href="#32-touch命令" class="headerlink" title="32. touch命令"></a>32. touch命令</h3><p>创建空白文件或设置文件的时间，格式为“touch [选项] [文件]”</p>
<p>-a：修改读取时间<br>-m：修改修改时间<br>-d：同时修改atime与mtime</p>
<h3 id="33-mkdir命令"><a href="#33-mkdir命令" class="headerlink" title="33. mkdir命令"></a>33. mkdir命令</h3><p>创建空白的目录，格式为“mkdir [选项] 目录”<br>-p：创建递归目录</p>
<h3 id="34-cp命令"><a href="#34-cp命令" class="headerlink" title="34. cp命令"></a>34. cp命令</h3><p>复制文件或目录，格式为“cp [选项] 源文件 目标文件</p>
<h3 id="35-mv命令"><a href="#35-mv命令" class="headerlink" title="35. mv命令"></a>35. mv命令</h3><p>剪切文件或将文件重命名，格式为“mv [选项] 源文件 [目标路径|目标文件名]”</p>
<h3 id="36-rm命令"><a href="#36-rm命令" class="headerlink" title="36. rm命令"></a>36. rm命令</h3><p>用于删除文件或目录，格式为“rm [选项] 文件”</p>
<h3 id="37-dd命令"><a href="#37-dd命令" class="headerlink" title="37. dd命令"></a>37. dd命令</h3><p>用于按照指定大小和个数的数据块来复制文件或转换文件，格式为“dd [参数]”</p>
<h3 id="38-file命令"><a href="#38-file命令" class="headerlink" title="38. file命令"></a>38. file命令</h3><p>查看文件的类型，格式为“file 文件名”</p>
<h3 id="39-tar命令"><a href="#39-tar命令" class="headerlink" title="39. tar命令"></a>39. tar命令</h3><p>“tar -czvf 压缩包名称.tar.gz 要打包的目录”命令把指定的文件进行打包压缩；相应的解压命令为“tar -xzvf 压缩包名称.tar.gz”</p>
<h3 id="40-grep命令"><a href="#40-grep命令" class="headerlink" title="40. grep命令"></a>40. grep命令</h3><p>在文本中执行关键词搜索，并显示匹配的结果，格式为“grep [选项] [文件]”<br>-n参数用来显示搜索到信息的行号；<br>-v参数用于反选信息（即没有包含关键词的所有信息行）</p>
<h3 id="41-find命令"><a href="#41-find命令" class="headerlink" title="41. find命令"></a>41. find命令</h3><p>按照指定条件来查找文件，格式为“find [查找路径] 寻找条件 操作”</p>
<p>获取到该目录中所有以host开头的文件列表<br>find &#x2F;etc -name “host*” -print</p>
<p>在整个文件系统中找出所有归属于linuxprobe用户的文件并复制到&#x2F;root&#x2F;findresults目录<br>find &#x2F; -user linuxprobe -exec cp -a {} &#x2F;root&#x2F;findresults&#x2F; ;</p>
<h3 id="42-chmod命令"><a href="#42-chmod命令" class="headerlink" title="42.chmod命令"></a>42.chmod命令</h3><p>能够用来设置文件或目录的权限，格式为“chmod [参数] 权限 文件或目录名称”。</p>
<h3 id="43-chown命令"><a href="#43-chown命令" class="headerlink" title="43.chown命令"></a>43.chown命令</h3><p>设置文件或目录的所有者和所属组，其格式为“chown [参数] 所有者：所属组 文件或目录名称”。chmod、chown大写参数-R来表示递归操作，即对目录内所有的文件进行整体操作。</p>
<h2 id="管道符、重定向和环境变量"><a href="#管道符、重定向和环境变量" class="headerlink" title="管道符、重定向和环境变量"></a>管道符、重定向和环境变量</h2><h3 id="输入输出重定向"><a href="#输入输出重定向" class="headerlink" title="输入输出重定向"></a>输入输出重定向</h3><ul>
<li>标准输入重定向（STDIN，文件描述符为0）：默认从键盘输入，也可从其他文件或命令中输入。</li>
<li>标准输出重定向（STDOUT，文件描述符为1）：默认输出到屏幕。</li>
<li>错误输出重定向（STDERR，文件描述符为2）：默认输出到屏幕。</li>
</ul>
<p>输出：</p>
<ol>
<li>命令 &lt; 文件：将文件作为命令的标准输入</li>
<li>命令 &lt;&lt; 分界符：从标准输入中读入，直到遇见分界符才停止</li>
<li>命令 &lt; 文件1 &gt; 文件2：将文件1作为命令的标准输入并将标准输出到文件2</li>
</ol>
<p>输出：</p>
<ol>
<li>命令 &gt; 文件：将文件标准输出重定向到一个文件中（清空原文件的数据）</li>
<li>命令2 &gt; 文件：将错误输出重定向到一个文件中（清空原文件的数据）</li>
<li>命令 &gt;&gt; 文件：将标准输出重定向到一个文件中（追加到原有内容的后面）</li>
<li>命令2 &gt;&gt; 文件：将错误输出重定向到一个文件中（追加到原有内容的后面）</li>
<li>命令 &gt;&gt; 文件2 &gt; &amp;1（命令&amp; &gt;&gt; 文件）：将标准输出与错误输出共同写入到文件中（追加到原有内容后面）</li>
</ol>
<h3 id="管道命令符（-）"><a href="#管道命令符（-）" class="headerlink" title="管道命令符（|）"></a>管道命令符（|）</h3><p>执行格式为“命令A | 命令B”。命令符的作用也可以用一句话来概括“把前一个命令原本要输出到屏幕的数据当作是后一个命令的标准输入”。</p>
<p>用翻页的形式查看&#x2F;etc目录中的文件列表及属性信息（这些内容默认会一股脑儿地显示到屏幕上，根本看不清楚）<br>ls -l &#x2F;etc&#x2F; | more</p>
<h3 id="转义字符"><a href="#转义字符" class="headerlink" title="转义字符"></a>转义字符</h3><ul>
<li><p>反斜杠（\）：使反斜杠后面的一个变量变为单纯的字符串。</p>
<p>echo “Price is \$$PRICE”</p>
<p>Price is  $5</p>
</li>
<li><p>单引号（’’）：转义其中所有的变量为单纯的字符串。</p>
</li>
<li><p>双引号（””）：保留其中的变量属性，不进行转义处理。</p>
<p>PRICE&#x3D;5</p>
<p>echo “Price is $PRICE”</p>
<p>Price is 5</p>
</li>
<li><p>反引号（&#96;&#96;）：把其中的命令执行后返回结果。</p>
<p>echo `uname -a`</p>
</li>
</ul>
<h3 id="环境变量"><a href="#环境变量" class="headerlink" title="环境变量"></a>环境变量</h3><p>命令在Linux中的执行分为4个步骤。</p>
<p>第1步：判断用户是否以绝对路径或相对路径的方式输入命令（如&#x2F;bin&#x2F;ls），如果是的话则直接执行。</p>
<p>第2步：Linux系统检查用户输入的命令是否为“别名命令”，即用一个自定义的命令名称来替换原本的命令名称。可以用alias命令来创建一个属于自己的命令别名，格式为“alias 别名&#x3D;命令”。若要取消一个命令别名，则是用unalias命令，格式为“unalias 别名”。我们之前在使用rm命令删除文件时，Linux系统都会要求我们再确认是否执行删除操作，其实这就是Linux系统为了防止用户误删除文件而特意设置的rm别名命令，接下来我们把它取消掉：<br>[root@linuxprobe ～]# ls<br>anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures Templates<br>Desktop Downloads Music Public Videos<br>[root@linuxprobe ～]# rm anaconda-ks.cfg<br>rm：remove regular file ‘anaconda-ks.cfg’? y<br>[root@linuxprobe～]# alias rm<br>alias rm&#x3D;’rm -i’<br>[root@linuxprobe ～]# unalias rm<br>[root@linuxprobe ～]# rm initial-setup-ks.cfg<br>[root@linuxprobe ～]#</p>
<p>第3步：Bash解释器判断用户输入的是内部命令还是外部命令。内部命令是解释器内部的指令，会被直接执行；而用户在绝大部分时间输入的是外部命令，这些命令交由步骤4继续处理。可以使用“type命令名称”来判断用户输入的命令是内部命令还是外部命令。</p>
<p>第4步：系统在多个路径中查找用户输入的命令文件，而定义这些路径的变量叫作PATH，可以简单地把它理解成是“解释器的小助手”，作用是告诉Bash解释器待执行的命令可能存放的位置，然后Bash解释器就会乖乖地在这些位置中逐个查找。</p>
<ul>
<li>HOME：用户的主目录</li>
<li>SHELL：用户在使用的Shell解释器名称</li>
<li>HISTSIZE：输出的历史命令记录条数</li>
<li>HISTFILESIZE：保存的历史命令记录条数</li>
<li>MAIL：邮件保存路径</li>
<li>LANG：系统语言、语系名称</li>
<li>RANDOM：生成一个随机数字</li>
<li>PS1：Bash解释器的提示符</li>
<li>PATH：定义解释器搜索用户执行命令的路径</li>
<li>EDITOR：用户默认的文本编辑器</li>
</ul>
<h2 id="Vim编辑器和Shell命令脚本"><a href="#Vim编辑器和Shell命令脚本" class="headerlink" title="Vim编辑器和Shell命令脚本"></a>Vim编辑器和Shell命令脚本</h2><ul>
<li><p>命令模式：控制光标移动，可对文本进行复制、粘贴、删除和查找等工作。（a、i、o等键进入输入模式；：键进入末行模式）</p>
<p>dd：删除光标所在行<br>5dd：删除光标处开始的5行<br>yy：复制光标所在整行<br>5yy：复制从光标处开始的5行<br>n：显示搜索命令定位到下一个字符串<br>N：显示搜索命令定位到上一个字符串<br>u：撤销上一步操作<br>p：将之前删除或复制过的数据粘贴到光标后面</p>
</li>
<li><p>输入模式：正常的文本录入。（Esc键退出输入模式返回命令模式）</p>
<p>:w：保存</p>
<p>:q：退出</p>
<p>:q!：强制退出（放弃修改内容）<br>:wq!：强制保存退出<br>:set nu：显示行号<br>:set nonu：不显示行号</p>
<p>:命令：执行该命令</p>
<p>:整数：跳转到该行</p>
<p>:s&#x2F;one&#x2F;two：将当前光标所在行的第一个one替换成two<br>:%s&#x2F;one&#x2F;two&#x2F;g：将文中所有one替换成two<br>?字符串：在文中向上搜索该字符串<br>&#x2F;字符串：在文中向下搜索该字符串</p>
</li>
<li><p>末行模式：保存或退出文档，以及设置编辑环境。（Esc键退出输入模式返回命令模式）</p>
</li>
</ul>
<h3 id="Shell脚本"><a href="#Shell脚本" class="headerlink" title="Shell脚本"></a>Shell脚本</h3><p>[root@～]# vim example.sh<br>#！&#x2F;bin&#x2F;bash<br>#For Example BY linuxprobe.com<br>pwd<br>ls -al</p>
<p>第一行的脚本声明（#！）用来告诉系统使用哪种Shell解释器来执行该脚本；第二行的注释信息（#）是对脚本功能和某些命令的介绍信息，使得自己或他人在日后看到这个脚本内容时，可以快速知道该脚本的作用或一些警告信息；第三、四行的可执行语句也就是我们平时执行的Linux命令了。</p>
<p>[root@～]# vim example.sh<br>#！&#x2F;bin&#x2F;bash<br>echo “当前脚本名称为$0”<br>echo “总共有$#个参数，分别是$*。”<br>echo “第1个参数为$1，第5个为$5。”<br>[root@～]# sh example.sh one two three four five six</p>
<p>当前脚本名称为example.sh<br>总共有6个参数，分别是one two three four five six。<br>第1个参数为one，第5个为five。</p>
<p>Shell脚本中的条件测试语法可以判断表达式是否成立，若条件成立则返回数字0，否则便返回其他随机数值。测试语句格式：</p>
<p>[ 条件表达式 ]</p>
<ul>
<li><p>文件测试语句；</p>
<p>-d：测试文件是否为目录类型</p>
<p>-e：测试文件是否存在</p>
<p>-f：判断是否为一般文件</p>
<p>-r：测试当前用户是否有权限读取</p>
<p>-w：测试当前用户是否有权限写入</p>
<p>-x：测试当前用户是否有权限执行</p>
</li>
<li><p>逻辑测试语句；</p>
<p>&amp;&amp;：“与”运算符</p>
<p>||：“或”运算符</p>
<p>!：“非”运算符</p>
</li>
<li><p>整数值比较语句；</p>
<p>-eq：是否等于</p>
<p>-ne：是否不等于</p>
<p>-gt：是否大于</p>
<p>-lt：是否小于</p>
<p>-le：是否等于或小于</p>
<p>-ge：是否大于或等于</p>
</li>
<li><p>字符串比较语句。</p>
<p>&#x3D;：比较字符串内容是否相同</p>
<p>!&#x3D;：比较字符串内容是否不同</p>
<p>-z：判断字符串内容是否为空</p>
</li>
</ul>
<h3 id="流程控制语句"><a href="#流程控制语句" class="headerlink" title="流程控制语句"></a>流程控制语句</h3><ul>
<li><p>if</p>
<p>#！&#x2F;bin&#x2F;bash<br>read -p “Enter your score（0-100）：” GRADE<br>if [ $GRADE -ge 85 ] &amp;&amp; [ $GRADE -le 100 ] ; then<br>  echo “$GRADE is Excellent”<br>elif [ $GRADE -ge 70 ] &amp;&amp; [ $GRADE -le 84 ] ; then<br>  echo “$GRADE is Pass”<br>else<br>  echo “$GRADE is Fail”<br>fi</p>
</li>
<li><p>for</p>
<p>for 变量名 in 取值列表</p>
<p>do</p>
<p>​    命令序列</p>
<p>done</p>
</li>
<li><p>while</p>
<p>whlie 条件测试操作</p>
<p>do</p>
<p>​    命令序列</p>
<p>done</p>
</li>
<li><p>case</p>
<p>case 变量值 in</p>
<p>模式1)</p>
<p>​    命令序列1</p>
<p>​    ;;</p>
<p>模式2)</p>
<p>​    命令序列2</p>
<p>​    ;;</p>
<p>….</p>
<p>*)</p>
<p>​    默认命令序列</p>
<p>esac</p>
</li>
</ul>
<h3 id="计划任务服务程序"><a href="#计划任务服务程序" class="headerlink" title="计划任务服务程序"></a>计划任务服务程序</h3><ul>
<li><p>一次性计划任务：</p>
<p>[root@linuxprobe ～]# at 23：30<br>at &gt; systemctl restart httpd<br>at &gt; 此处请同时按下Ctrl + D组合键来结束编写计划任务</p>
<p>at -l查看还没执行命令</p>
<p>atrm任务id，删除任务</p>
</li>
<li><p>周期性计划任务</p>
<p>crontab -e：创建、编辑任务</p>
<p>crontab -l：查看任务</p>
<p>crontab -r：删除任务</p>
</li>
</ul>
<h2 id="用户与文件权限"><a href="#用户与文件权限" class="headerlink" title="用户与文件权限"></a>用户与文件权限</h2><h3 id="用户权限命令"><a href="#用户权限命令" class="headerlink" title="用户权限命令"></a>用户权限命令</h3><ul>
<li><p>useradd命令</p>
<p>创建新的用户，格式为“useradd [选项] 用户名”<br>-d：指定用户的家目录<br>-e：账户的到期时间，格式我为YYYY-MM-DD<br>-u：指定该用户的默认<br>-g：指定一个初始的用户的基本组<br>-G：指定一个或多个扩展用户组<br>-N：不创建与用户同名的基本用户组<br>-s：指定该用户的默认Shell解释器</p>
</li>
<li><p>groupadd命令</p>
<p>用于创建用户组，格式为“groupadd [选项] 群组名”</p>
</li>
<li><p>usermod命令</p>
<p>用于修改用户的属性，格式为“usermod [选项] 用户名”<br>-c：填写用户账户的备注信<br>-d、-m：参数-m与参数-d连用，可重新指定用户的家目录并自动把旧的数据转移过去<br>-e：账户的到期时间格式为YYYY-MM-DD<br>-g：变更所属用户组<br>-G：变更扩展用户组<br>-L：锁定用户禁止其登录系统<br>-U：解锁2用户，允许其登录系统<br>-s：变更默认终端<br>-u：修改用户的UID</p>
</li>
<li><p>passwd命令</p>
<p>用于修改用户密码、过期时间、认证信息等，格式为“passwd [选项] [用户名]”<br>-l：锁定用户，禁止其登录<br>-u：解除锁定，允许用户登录<br>–stdin：允许通过标准输入修改用户密码，如echo “NewPassWord” passwd –stdin UserName<br>-d：使用该用户可用空密码登录系统<br>-e：强制用户在下一次登录时修改密码<br>-S：显示用户的密码是否被锁定，以及密码所采用的加密算法名称</p>
</li>
<li><p>userdel命令</p>
<p>用于删除用户，格式为“userdel [选项] 用户名”<br>-f：强制删除用户<br>-r：强制删除用户及用户家目录</p>
</li>
</ul>
<h3 id="文件权限"><a href="#文件权限" class="headerlink" title="文件权限"></a>文件权限</h3><ul>
<li>-：普通文件</li>
<li>d：目录文件</li>
<li>l：链接文件</li>
<li>b：块设备文件</li>
<li>c：字符设备文件</li>
<li>p：管道文件</li>
</ul>
<p>r、w、x分别表示可读、可写、可执行，也可用4、2、1表示<br>现在有这样一个文件，其所有者拥有可读、可写、可执行的权限，其文件所属组拥有可读、可写的权限；而且其他人只有可读的权限。那么，这个文件的权限就是rwxrw-r——，数字法表示即为764。<br>-rw-r–r– 1 root    root 58763 Dec  3 15:30 redis.conf<br>文件的类型、访问权限、所有者（属主）、所属组（属组）、占用的磁盘大小、修改时间和文件名称等信息，通过分析可知，该文件的类型为普通文件，所有者权限为可读、可写（rw-），所属组权限为可读（r——），除此以外的其他人也只有可读权限（r——），文件的磁盘占用大小是58763字节，最近一次的修改时间为12月3日的15点30分，文件的名称为redis.conf。</p>
<h3 id="文件特殊权限"><a href="#文件特殊权限" class="headerlink" title="文件特殊权限"></a>文件特殊权限</h3><p>SUID是一种对二进制程序进行设置的特殊权限，可以让二进制程序的执行者临时拥有属主的权限（仅对拥有执行权限的二进制程序有效）。<br>查看passwd命令属性时发现所有者的权限由rwx变成了rws，其中x改变成s就意味着该文件被赋予了SUID权限。如果原先权限位上没有x执行权限，那么被赋予特殊权限后将变成大写的S。</p>
<p>SGID</p>
<ul>
<li>让执行者临时拥有属组的权限（对拥有执行权限的二进制程序进行设置）；</li>
<li>在某个目录中创建的文件自动继承该目录的用户组（只可以对目录进行设置）。</li>
<li>对应的参数o+t代表设置SGID，如：chmod -Rf g+s testdir&#x2F;</li>
</ul>
<p>SBIT</p>
<p>SBIT特殊权限位可确保用户只能删除自己的文件，而不能删除其他用户的文件。用chmod命令就可以了。对应的参数o+t代表设置SBIT粘滞位权，如：chmod -R o+t linux&#x2F;</p>
<h3 id="文件隐藏属性"><a href="#文件隐藏属性" class="headerlink" title="文件隐藏属性"></a>文件隐藏属性</h3><ul>
<li>chattr命令<br>用于设置文件的隐藏权限，格式为“chattr [参数] 文件”，如果想要把某个隐藏功能添加到文件上，则需要在命令后面追加“+参数”，如果想要把某个隐藏功能移出文件，则需要追加“-参数”。<br>i：无法对文件进行修改；若对目录设置了该参数，则仅能修改其中的子文件内容而不能新建或删除文件<br>a：仅允许补充（追加）内容，无法覆盖&#x2F;删除内容<br>S：文件内容在变更后立即同步到硬盘<br>s：彻底从硬盘中删除，不可恢复<br>A：不再修改这个文件或目录的最后访问时间<br>b：不再修改这个文件或目录的存取时间<br>D：检查压缩文件中的错误<br>d：使用dump命令备份是忽略文件&#x2F;目录<br>c：默认将文件或目录进行压缩<br>u：当删除该文件后依然保留其在硬盘中的数据，方便日后恢复<br>t：让文件系统支持尾部合并<br>X：可以直接访问压缩文件中的内容</li>
<li>lsattr命令<br>显示文件的隐藏权限，格式为“lsattr [参数] 文件”</li>
</ul>
<h3 id="文件访问控制列表"><a href="#文件访问控制列表" class="headerlink" title="文件访问控制列表"></a>文件访问控制列表</h3><ul>
<li><p>setfacl命令</p>
<p>用于管理文件的ACL规则，格式为“setfacl [参数] 文件名称”，其中，针对目录文件需要使用-R递归参数；针对普通文件则使用-m参数；如果想要删除某个文件的ACL，则可以使用-b参数。</p>
</li>
<li><p>getfacl命令</p>
<p>用于显示文件上设置的ACL信息，格式为“getfacl 文件名称”</p>
</li>
</ul>
<h3 id="su命令与sudo服务"><a href="#su命令与sudo服务" class="headerlink" title="su命令与sudo服务"></a>su命令与sudo服务</h3><ul>
<li>su<br>su userId：切换到userId用户，如果su命令与用户名之间有一个减号（-），这意味着完全切换到新的用户，即把环境变量信息也变更为新用户的相应信息，而不是保留原始的信息。强烈建议在切换用户身份时添加这个减号（-）。</li>
<li>sudo<br>给普通用户提供额外的权限来完成原本root管理员才能完成的任务，格式为“sudo [参数] 命令名称”<br>-h：列出帮助信息<br>-l：列出当前用户可执行的命令<br>-u 用户名或UID值：以指定用户身份执行命令<br>-k：清空密码的有效时间，下一次执行sudo时需要再次进行密码验证<br>-b：在后台执行指定的命令<br>-p：更改询问密码的提示语</li>
</ul>
<h2 id="存储结构与磁盘划分"><a href="#存储结构与磁盘划分" class="headerlink" title="存储结构与磁盘划分"></a>存储结构与磁盘划分</h2><h3 id="一切从“-x2F-”开始"><a href="#一切从“-x2F-”开始" class="headerlink" title="一切从“&#x2F;”开始"></a>一切从“&#x2F;”开始</h3><p>Linux系统中的一切文件都是从“根（&#x2F;）”目录开始的，并按照文件系统层次化标准（FHS）采用树形结构来存放文件，以及定义了常见目录的用途。另外，Linux系统中的文件和目录名称是严格区分大小写的。例如，root、rOOt、Root、rooT均代表不同的目录，并且文件名称中不得包含斜杠（&#x2F;）<br>&#x2F;boot：开机所需文件——内核、开机菜单以及所需配置文件等<br>&#x2F;dev：以文件形式存放任何设备与接口<br>&#x2F;etc：配置文件<br>&#x2F;home：用户家目录<br>&#x2F;bin：存放单用户模式下还可以操作的命令<br>&#x2F;lib：开机时用到的函数库，以及&#x2F;bin与&#x2F;sbin下面的命令要调用的函数<br>&#x2F;sbin：开机过程中需要的命令<br>&#x2F;media：用于挂载设备文件的目录<br>&#x2F;opt：放置第三方的软件<br>&#x2F;root：系统管理员的家目录<br>&#x2F;srv：一些网络服务的数据文件目录<br>&#x2F;tmp：任何人均可使用的“共享”临时目录<br>&#x2F;proc：虚拟文件系统，例如系统内核、进程、外部设备及网络状态等<br>&#x2F;usr&#x2F;local：用户自行安装的软件<br>&#x2F;usr&#x2F;sbinLinux系统开机时不会使用到的软件&#x2F;命令&#x2F;脚本<br>&#x2F;usr&#x2F;share：帮助与说明文件。也可放置共享文件<br>&#x2F;var：主要存放经常变化的文件，如日志<br>&#x2F;lost+found：当文件系统发生错误时，将一些丢失的文件片段存放在这里</p>
<h3 id="物理设备的命令规则"><a href="#物理设备的命令规则" class="headerlink" title="物理设备的命令规则"></a>物理设备的命令规则</h3><p>系统内核中的udev设备管理器会自动把硬件名称规范起来，目的是让用户通过设备文件的名字可以猜出设备大致的属性以及分区信息等</p>
<p>udev设备管理器的服务会一直以守护进程的形式运行并侦听内核发出的信号来管理&#x2F;dev目录下的设备文件。<br>IDE设备：&#x2F;dev&#x2F;hd[a-d]<br>SCSI&#x2F;SATA&#x2F;U盘：&#x2F;dev&#x2F;sd[a-p]<br>软驱：&#x2F;dev&#x2F;fd[0-1]<br>打印机：&#x2F;dev&#x2F;lp[0-15]<br>光驱：&#x2F;dev&#x2F;cdrom<br>鼠标：&#x2F;dev&#x2F;mouse<br>磁带机：&#x2F;dev&#x2F;st0或&#x2F;dev&#x2F;ht0</p>
<p>a~p代表16块不同的硬盘</p>
<ul>
<li>主分区或扩展分区的编号从1开始，到4结束；</li>
<li>逻辑分区从编号5开始。</li>
</ul>
<p>“&#x2F;dev&#x2F;sda5”表示的就是“这是系统中第一块被识别到的硬件设备中分区编号为5的逻辑分区的设备文件”。</p>
<h3 id="文件系统与数据资料"><a href="#文件系统与数据资料" class="headerlink" title="文件系统与数据资料"></a>文件系统与数据资料</h3><p>用户在硬件存储设备中执行的文件建立、写入、读取、修改、转存与控制等操作都是依靠文件系统来完成的。文件系统的作用是合理规划硬盘，以保证用户正常的使用需求。</p>
<ul>
<li>Ext3：是一款日志文件系统，能够在系统异常宕机时避免文件系统资料丢失，并能自动修复数据的不一致与错误。然而，当硬盘容量较大时，所需的修复时间也会很长，而且也不能百分之百地保证资料不会丢失。它会把整个磁盘的每个写入动作的细节都预先记录下来，以便在发生异常宕机后能回溯追踪到被中断的部分，然后尝试进行修复。</li>
<li>Ext4：Ext3的改进版本，作为RHEL 6系统中的默认文件管理系统，它支持的存储容量高达1EB（1EB&#x3D;1，073，741，824GB），且能够有无限多的子目录。另外，Ext4文件系统能够批量分配block块，从而极大地提高了读写效率。</li>
<li>XFS：是一种高性能的日志文件系统，而且是RHEL 7中默认的文件管理系统，它的优势在发生意外宕机后尤其明显，即可以快速地恢复可能被破坏的文件，而且强大的日志功能只用花费极低的计算和存储性能。并且它最大可支持的存储容量为18EB，这几乎满足了所有需求。</li>
</ul>
<h3 id="挂载硬件设备"><a href="#挂载硬件设备" class="headerlink" title="挂载硬件设备"></a>挂载硬件设备</h3><ul>
<li>mount命令<br>用于挂载文件系统，格式为“mount 文件系统 挂载目录”，mount 中的-a参数则厉害了，它会在执行后自动检查&#x2F;etc&#x2F;fstab文件中有无疏漏被挂载的设备文件，如果有，则进行自动挂载操作。</li>
<li>unmount命令<br>撤销已经挂载的设备文件，格式为“umount [挂载点&#x2F;设备文件]”。</li>
</ul>
<h3 id="添加硬盘设备"><a href="#添加硬盘设备" class="headerlink" title="添加硬盘设备"></a>添加硬盘设备</h3><ul>
<li>fdisk命令<br>用于管理磁盘分区，格式为“fdisk [磁盘名称]”<br>m：查看全部可用的参数<br>n：添加新的分区<br>d：删除某个分区信息<br>l：列出所有可用的分区类型<br>t：改变某个分区的类型<br>p：查看分区信息<br>w：保存并退出<br>q：不保存直接退出</li>
<li>du命令<br>用于查看文件数据占用量的du命令，其格式为“du [选项] [文件]”，du -sh &#x2F;*命令来查看在Linux系统根目录下所有一级目录分别占用的空间大小。</li>
</ul>
<h3 id="添加交换分区"><a href="#添加交换分区" class="headerlink" title="添加交换分区"></a>添加交换分区</h3><p>SWAP（交换）分区是一种通过在硬盘中预先划分一定的空间，然后将把内存中暂时不常用的数据临时存放到硬盘中，以便腾出物理内存空间让更活跃的程序服务来使用的技术，其设计目的是为了解决真实物理内存不足的问题。在生产环境中，交换分区的大小一般为真实物理内存的1.5～2倍。</p>
<h3 id="软硬方式链接"><a href="#软硬方式链接" class="headerlink" title="软硬方式链接"></a>软硬方式链接</h3><ul>
<li><p>硬链接（hard link）：可以将它理解为一个“指向原始文件inode的指针”，系统不为它分配独立的inode和文件。所以，硬链接文件与原始文件其实是同一个文件，只是名字不同。我们每添加一个硬链接，该文件的inode连接数就会增加1；而且只有当该文件的inode连接数为0时，才算彻底将它删除。换言之，由于硬链接实际上是指向原文件inode的指针，因此即便原始文件被删除，依然可以通过硬链接文件来访问。需要注意的是，由于技术的局限性，我们不能跨分区对目录文件进行链接。</p>
</li>
<li><p>软链接（也称为符号链接[symbolic link]）：仅仅包含所链接文件的路径名，因此能链接目录文件，也可以跨越文件系统进行链接。但是，当原始文件被删除后，链接文件也将失效，从这一点上来说与Windows系统中的“快捷方式”具有一样的性质。</p>
</li>
</ul>
<p>ln命令用于创建链接文件，格式为“ln [选项] 目标”<br>-s：创建“符号链接”（如果不带-s参数，则默认创建硬链接）<br>-f：强制创建文件或目录的链接<br>-i：覆盖前先询问<br>-v：显示创建链接的过程</p>

    </div>

    
    
    

      <footer class="post-footer">
          <div class="post-tags">
              <a href="/xx1997/tags/Linux-shell/" rel="tag"># Linux - shell</a>
          </div>

        


        
    <div class="post-nav">
      <div class="post-nav-item"></div>
      <div class="post-nav-item">
    <a href="/xx1997/2022/04/22/MySql%E5%9F%BA%E7%A1%80%E6%9E%B6%E6%9E%84/" rel="next" title="MySql基础架构">
      MySql基础架构 <i class="fa fa-chevron-right"></i>
    </a></div>
    </div>
      </footer>
    
  </article>
  
  
  



          </div>
          

<script>
  window.addEventListener('tabs:register', () => {
    let { activeClass } = CONFIG.comments;
    if (CONFIG.comments.storage) {
      activeClass = localStorage.getItem('comments_active') || activeClass;
    }
    if (activeClass) {
      let activeTab = document.querySelector(`a[href="#comment-${activeClass}"]`);
      if (activeTab) {
        activeTab.click();
      }
    }
  });
  if (CONFIG.comments.storage) {
    window.addEventListener('tabs:click', event => {
      if (!event.target.matches('.tabs-comment .tab-content .tab-pane')) return;
      let commentClass = event.target.classList[1];
      localStorage.setItem('comments_active', commentClass);
    });
  }
</script>

        </div>
          
  
  <div class="toggle sidebar-toggle">
    <span class="toggle-line toggle-line-first"></span>
    <span class="toggle-line toggle-line-middle"></span>
    <span class="toggle-line toggle-line-last"></span>
  </div>

  <aside class="sidebar">
    <div class="sidebar-inner">

      <ul class="sidebar-nav motion-element">
        <li class="sidebar-nav-toc">
          文章目录
        </li>
        <li class="sidebar-nav-overview">
          站点概览
        </li>
      </ul>

      <!--noindex-->
      <div class="post-toc-wrap sidebar-panel">
          <div class="post-toc motion-element"><ol class="nav"><li class="nav-item nav-level-2"><a class="nav-link" href="#Linux%E5%91%BD%E4%BB%A4"><span class="nav-number">1.</span> <span class="nav-text">Linux命令</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#1-echo%E5%91%BD%E4%BB%A4"><span class="nav-number">1.1.</span> <span class="nav-text">1. echo命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#2-date%E5%91%BD%E4%BB%A4"><span class="nav-number">1.2.</span> <span class="nav-text">2. date命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#3-reboot%E5%91%BD%E4%BB%A4"><span class="nav-number">1.3.</span> <span class="nav-text">3. reboot命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#4-poweroff%E5%91%BD%E4%BB%A4"><span class="nav-number">1.4.</span> <span class="nav-text">4. poweroff命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#5-wget%E5%91%BD%E4%BB%A4"><span class="nav-number">1.5.</span> <span class="nav-text">5. wget命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#6-ps%E5%91%BD%E4%BB%A4"><span class="nav-number">1.6.</span> <span class="nav-text">6. ps命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#7-top%E5%91%BD%E4%BB%A4"><span class="nav-number">1.7.</span> <span class="nav-text">7. top命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#8-pidof%E5%91%BD%E4%BB%A4"><span class="nav-number">1.8.</span> <span class="nav-text">8. pidof命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#9-kill%E5%91%BD%E4%BB%A4"><span class="nav-number">1.9.</span> <span class="nav-text">9. kill命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#10-killall%E5%91%BD%E4%BB%A4"><span class="nav-number">1.10.</span> <span class="nav-text">10. killall命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#11-ifconfig%E5%91%BD%E4%BB%A4"><span class="nav-number">1.11.</span> <span class="nav-text">11. ifconfig命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#12-uname%E5%91%BD%E4%BB%A4"><span class="nav-number">1.12.</span> <span class="nav-text">12. uname命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#13-uptime%E5%91%BD%E4%BB%A4"><span class="nav-number">1.13.</span> <span class="nav-text">13. uptime命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#14-free%E5%91%BD%E4%BB%A4"><span class="nav-number">1.14.</span> <span class="nav-text">14. free命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#15-who%E5%91%BD%E4%BB%A4"><span class="nav-number">1.15.</span> <span class="nav-text">15. who命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#16-last%E5%91%BD%E4%BB%A4"><span class="nav-number">1.16.</span> <span class="nav-text">16. last命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#17-history%E5%91%BD%E4%BB%A4"><span class="nav-number">1.17.</span> <span class="nav-text">17. history命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#18-sosreport%E5%91%BD%E4%BB%A4"><span class="nav-number">1.18.</span> <span class="nav-text">18. sosreport命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#19-pwd%E5%91%BD%E4%BB%A4"><span class="nav-number">1.19.</span> <span class="nav-text">19. pwd命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#20-cd%E5%91%BD%E4%BB%A4"><span class="nav-number">1.20.</span> <span class="nav-text">20. cd命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#21-ls%E5%91%BD%E4%BB%A4"><span class="nav-number">1.21.</span> <span class="nav-text">21. ls命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#22-ll%E5%91%BD%E4%BB%A4"><span class="nav-number">1.22.</span> <span class="nav-text">22. ll命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#23-cat%E5%91%BD%E4%BB%A4"><span class="nav-number">1.23.</span> <span class="nav-text">23. cat命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#24-more%E5%91%BD%E4%BB%A4"><span class="nav-number">1.24.</span> <span class="nav-text">24. more命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#25-head%E5%91%BD%E4%BB%A4"><span class="nav-number">1.25.</span> <span class="nav-text">25. head命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#26-tail%E5%91%BD%E4%BB%A4"><span class="nav-number">1.26.</span> <span class="nav-text">26. tail命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#27-tr%E5%91%BD%E4%BB%A4"><span class="nav-number">1.27.</span> <span class="nav-text">27. tr命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#28-wc%E5%91%BD%E4%BB%A4"><span class="nav-number">1.28.</span> <span class="nav-text">28. wc命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#29-stat%E5%91%BD%E4%BB%A4"><span class="nav-number">1.29.</span> <span class="nav-text">29. stat命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#30-cut%E5%91%BD%E4%BB%A4"><span class="nav-number">1.30.</span> <span class="nav-text">30. cut命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#31-diff%E5%91%BD%E4%BB%A4"><span class="nav-number">1.31.</span> <span class="nav-text">31. diff命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#32-touch%E5%91%BD%E4%BB%A4"><span class="nav-number">1.32.</span> <span class="nav-text">32. touch命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#33-mkdir%E5%91%BD%E4%BB%A4"><span class="nav-number">1.33.</span> <span class="nav-text">33. mkdir命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#34-cp%E5%91%BD%E4%BB%A4"><span class="nav-number">1.34.</span> <span class="nav-text">34. cp命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#35-mv%E5%91%BD%E4%BB%A4"><span class="nav-number">1.35.</span> <span class="nav-text">35. mv命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#36-rm%E5%91%BD%E4%BB%A4"><span class="nav-number">1.36.</span> <span class="nav-text">36. rm命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#37-dd%E5%91%BD%E4%BB%A4"><span class="nav-number">1.37.</span> <span class="nav-text">37. dd命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#38-file%E5%91%BD%E4%BB%A4"><span class="nav-number">1.38.</span> <span class="nav-text">38. file命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#39-tar%E5%91%BD%E4%BB%A4"><span class="nav-number">1.39.</span> <span class="nav-text">39. tar命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#40-grep%E5%91%BD%E4%BB%A4"><span class="nav-number">1.40.</span> <span class="nav-text">40. grep命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#41-find%E5%91%BD%E4%BB%A4"><span class="nav-number">1.41.</span> <span class="nav-text">41. find命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#42-chmod%E5%91%BD%E4%BB%A4"><span class="nav-number">1.42.</span> <span class="nav-text">42.chmod命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#43-chown%E5%91%BD%E4%BB%A4"><span class="nav-number">1.43.</span> <span class="nav-text">43.chown命令</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E7%AE%A1%E9%81%93%E7%AC%A6%E3%80%81%E9%87%8D%E5%AE%9A%E5%90%91%E5%92%8C%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F"><span class="nav-number">2.</span> <span class="nav-text">管道符、重定向和环境变量</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#%E8%BE%93%E5%85%A5%E8%BE%93%E5%87%BA%E9%87%8D%E5%AE%9A%E5%90%91"><span class="nav-number">2.1.</span> <span class="nav-text">输入输出重定向</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E7%AE%A1%E9%81%93%E5%91%BD%E4%BB%A4%E7%AC%A6%EF%BC%88-%EF%BC%89"><span class="nav-number">2.2.</span> <span class="nav-text">管道命令符（|）</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E8%BD%AC%E4%B9%89%E5%AD%97%E7%AC%A6"><span class="nav-number">2.3.</span> <span class="nav-text">转义字符</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F"><span class="nav-number">2.4.</span> <span class="nav-text">环境变量</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#Vim%E7%BC%96%E8%BE%91%E5%99%A8%E5%92%8CShell%E5%91%BD%E4%BB%A4%E8%84%9A%E6%9C%AC"><span class="nav-number">3.</span> <span class="nav-text">Vim编辑器和Shell命令脚本</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#Shell%E8%84%9A%E6%9C%AC"><span class="nav-number">3.1.</span> <span class="nav-text">Shell脚本</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%B5%81%E7%A8%8B%E6%8E%A7%E5%88%B6%E8%AF%AD%E5%8F%A5"><span class="nav-number">3.2.</span> <span class="nav-text">流程控制语句</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E8%AE%A1%E5%88%92%E4%BB%BB%E5%8A%A1%E6%9C%8D%E5%8A%A1%E7%A8%8B%E5%BA%8F"><span class="nav-number">3.3.</span> <span class="nav-text">计划任务服务程序</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E7%94%A8%E6%88%B7%E4%B8%8E%E6%96%87%E4%BB%B6%E6%9D%83%E9%99%90"><span class="nav-number">4.</span> <span class="nav-text">用户与文件权限</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#%E7%94%A8%E6%88%B7%E6%9D%83%E9%99%90%E5%91%BD%E4%BB%A4"><span class="nav-number">4.1.</span> <span class="nav-text">用户权限命令</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%96%87%E4%BB%B6%E6%9D%83%E9%99%90"><span class="nav-number">4.2.</span> <span class="nav-text">文件权限</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%96%87%E4%BB%B6%E7%89%B9%E6%AE%8A%E6%9D%83%E9%99%90"><span class="nav-number">4.3.</span> <span class="nav-text">文件特殊权限</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%96%87%E4%BB%B6%E9%9A%90%E8%97%8F%E5%B1%9E%E6%80%A7"><span class="nav-number">4.4.</span> <span class="nav-text">文件隐藏属性</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%96%87%E4%BB%B6%E8%AE%BF%E9%97%AE%E6%8E%A7%E5%88%B6%E5%88%97%E8%A1%A8"><span class="nav-number">4.5.</span> <span class="nav-text">文件访问控制列表</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#su%E5%91%BD%E4%BB%A4%E4%B8%8Esudo%E6%9C%8D%E5%8A%A1"><span class="nav-number">4.6.</span> <span class="nav-text">su命令与sudo服务</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%AD%98%E5%82%A8%E7%BB%93%E6%9E%84%E4%B8%8E%E7%A3%81%E7%9B%98%E5%88%92%E5%88%86"><span class="nav-number">5.</span> <span class="nav-text">存储结构与磁盘划分</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#%E4%B8%80%E5%88%87%E4%BB%8E%E2%80%9C-x2F-%E2%80%9D%E5%BC%80%E5%A7%8B"><span class="nav-number">5.1.</span> <span class="nav-text">一切从“&#x2F;”开始</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E7%89%A9%E7%90%86%E8%AE%BE%E5%A4%87%E7%9A%84%E5%91%BD%E4%BB%A4%E8%A7%84%E5%88%99"><span class="nav-number">5.2.</span> <span class="nav-text">物理设备的命令规则</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E4%B8%8E%E6%95%B0%E6%8D%AE%E8%B5%84%E6%96%99"><span class="nav-number">5.3.</span> <span class="nav-text">文件系统与数据资料</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%8C%82%E8%BD%BD%E7%A1%AC%E4%BB%B6%E8%AE%BE%E5%A4%87"><span class="nav-number">5.4.</span> <span class="nav-text">挂载硬件设备</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%B7%BB%E5%8A%A0%E7%A1%AC%E7%9B%98%E8%AE%BE%E5%A4%87"><span class="nav-number">5.5.</span> <span class="nav-text">添加硬盘设备</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%B7%BB%E5%8A%A0%E4%BA%A4%E6%8D%A2%E5%88%86%E5%8C%BA"><span class="nav-number">5.6.</span> <span class="nav-text">添加交换分区</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#%E8%BD%AF%E7%A1%AC%E6%96%B9%E5%BC%8F%E9%93%BE%E6%8E%A5"><span class="nav-number">5.7.</span> <span class="nav-text">软硬方式链接</span></a></li></ol></li></ol></div>
      </div>
      <!--/noindex-->

      <div class="site-overview-wrap sidebar-panel">
        <div class="site-author motion-element" itemprop="author" itemscope itemtype="http://schema.org/Person">
    <img class="site-author-image" itemprop="image" alt="xxstar"
      src="/xx1997/images/xxstar.jpg">
  <p class="site-author-name" itemprop="name">xxstar</p>
  <div class="site-description" itemprop="description"></div>
</div>
<div class="site-state-wrap motion-element">
  <nav class="site-state">
      <div class="site-state-item site-state-posts">
          <a href="/xx1997/archives/">
        
          <span class="site-state-item-count">6</span>
          <span class="site-state-item-name">日志</span>
        </a>
      </div>
      <div class="site-state-item site-state-categories">
            <a href="/xx1997/categories/">
          
        <span class="site-state-item-count">1</span>
        <span class="site-state-item-name">分类</span></a>
      </div>
      <div class="site-state-item site-state-tags">
            <a href="/xx1997/tags/">
          
        <span class="site-state-item-count">5</span>
        <span class="site-state-item-name">标签</span></a>
      </div>
  </nav>
</div>
  <div class="links-of-author motion-element">
      <span class="links-of-author-item">
        <a href="/xx1997/wx1051337247@163.com" title="E-Mail → wx1051337247@163.com"><i class="fa fa-envelope fa-fw"></i>E-Mail</a>
      </span>
  </div>
  <div class="cc-license motion-element" itemprop="license">
    <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/" class="cc-opacity" rel="noopener" target="_blank"><img src="/xx1997/images/cc-by-nc-sa.svg" alt="Creative Commons"></a>
  </div>



      </div>

    </div>
  </aside>
  <div id="sidebar-dimmer"></div>


      </div>
    </main>

    <footer class="footer">
      <div class="footer-inner">
        

        

<div class="copyright">
  
  &copy; 
  <span itemprop="copyrightYear">2022</span>
  <span class="with-love">
    <i class="fa fa-heart"></i>
  </span>
  <span class="author" itemprop="copyrightHolder">xxstar</span>
</div>
  <div class="powered-by">由 <a href="https://hexo.io/" class="theme-link" rel="noopener" target="_blank">Hexo</a> & <a href="https://theme-next.org/" class="theme-link" rel="noopener" target="_blank">NexT.Gemini</a> 强力驱动
  </div>

        
<div class="busuanzi-count">
  <script async src="https://busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
    <span class="post-meta-item" id="busuanzi_container_site_uv" style="display: none;">
      <span class="post-meta-item-icon">
        <i class="fa fa-user"></i>
      </span>
      <span class="site-uv" title="总访客量">
        <span id="busuanzi_value_site_uv"></span>
      </span>
    </span>
    <span class="post-meta-divider">|</span>
    <span class="post-meta-item" id="busuanzi_container_site_pv" style="display: none;">
      <span class="post-meta-item-icon">
        <i class="fa fa-eye"></i>
      </span>
      <span class="site-pv" title="总访问量">
        <span id="busuanzi_value_site_pv"></span>
      </span>
    </span>
</div>








      </div>
    </footer>
  </div>

  
  <script src="/xx1997/lib/anime.min.js"></script>
  <script src="/xx1997/lib/velocity/velocity.min.js"></script>
  <script src="/xx1997/lib/velocity/velocity.ui.min.js"></script>

<script src="/xx1997/js/utils.js"></script>

<script src="/xx1997/js/motion.js"></script>


<script src="/xx1997/js/schemes/pisces.js"></script>


<script src="/xx1997/js/next-boot.js"></script>




  




  
<script src="/xx1997/js/local-search.js"></script>













  

  

</body>
</html>
